package com.vcc.data.entity;


import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import com.vcc.data.base.entity.BaseEntity;
import lombok.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@EqualsAndHashCode(callSuper = true)
@Data
@Setter
@Getter
@Table(value = "vcc_risk_user_card_log")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class RiskUserCardLog extends BaseEntity implements Serializable {

    @Column(comment = "风控规则Id", value = "risk_id")
    private Long riskId;

    @Column(comment = "触发时间", value = "trigger_event_date")
    private Date triggerEventDate;

    @Column(comment = "完成时间", value = "complete_date")
    private String completeDate;

    @Column(comment = "状态 0 成功 1 失败 2 等待中", value = "status")
    private Integer status;

    @Column(comment = "处理状态 0 已处理 1 未处理", value = "dispose_status")
    private Integer disposeStatus;

    @Column(comment = "处理对象", value = "dispose_object")
    private String disposeObject;

    @Column(comment = "处理方法", value = "dispose_function_name")
    private String disposeFunctionName;

    @Column(comment = "是否自动化", value = "has_auto")
    private Boolean hasAuto;

    @Column(comment = "备注", value = "remark")
    private String remark;

    @Column(comment = "交易用户ID", value = "user_id")
    private Long userId;

    @Column(comment = "交易用户账号", value = "user_account", ignore = true)
    private String userAccount;

    @Column(comment = "交易号段ID", value = "card_type_id")
    private Long cardTypeId;

    @Column(comment = "号段", value = "section_no", ignore = true)
    private String sectionNo;

    @Column(comment = "交易用户卡ID", value = "user_card_id")
    private Long userCardId;

    @Column(comment = "交易卡号", value = "card_number")
    private String cardNumber;

    @Column(comment = "交易渠道", value = "channel_name")
    private String channelName;

    @Column(comment = "操作用户Id", value = "operator_id")
    private Long operatorId;

    @Column(comment = "操作用户账号", value = "operator_account", ignore = true)
    private String operatorAccount;

    @Column(comment = "余额", value = "balance")
    private BigDecimal balance;

    @Column(comment = "风控规则key", value = "key")
    private String key;

    @Column(comment = "风控规则value", value = "practical_rate")
    private BigDecimal practicalRate;

    @Column(comment = "风控规则value", value = "risk_rate")
    private BigDecimal riskRate;


}
